// file: inventory.types.ts

/**
 * 描述一个物品的基础属性。
 * 这是一个接口，具体的物品数据可以从配置文件或数据库中加载。
 */
export interface IItem {
    readonly id: string | number; // 物品的唯一标识符
    readonly name: string; // 物品的显示名称
    readonly maxStack: number; // 最大堆叠数量
    // 可以添加其他属性，如：
    // readonly description: string;
    // readonly type: 'weapon' | 'consumable' | 'material';
}

/**
 * 描述一个背包槽中的内容。
 */
export interface ISlot {
    item: IItem | null; // 槽内物品的类型，null表示为空
    quantity: number; // 物品的数量
    durable?: number;
}
